1. Field of the Invention
The present invention relates to a programmable controller and a method therefor which does not require sequence control programs to be written for the sequence control of a controlled object.
2. Description of the Background Art
Programmable controllers are employed for the sequence control of a wide variety of controlled objects.
FIG. 5 illustrates the arrangement of a drilling unit for boring a hole in a workpiece as an example of a sequence control of a controlled object by means of a programmable controller known in the art. In FIG. 5, a workpiece 1 is secured in a machining position on base 4 by a clamper 2. The base 4 also has securely installed thereto a spindle unit 3 for performing a machining operation. Specifically, the spindle unit 3 is operative to drill the workpiece 1 while the workpiece 1 is set clampably on the base 4 by the clamper 2 and the spindle unit 3 advances and retracts on the base 4.
In FIG. 5, the symbol LS indicates a limit switch. Specifically, LS-R stands for a limit switch for detecting the rear end of the spindle unit 3 in a retraction position, LS-F a limit switch for detecting the front end Of the spindle unit 3 in an advance position, LS-U a limit switch for detecting the top end of the clamper 2 in a top position, LS-D a limit switch for detecting the bottom end of the clamper 2 in a bottom position, and LS-W a limit switch for detecting the placement of the workpiece 1 in a machining position. The symbol SOL indicating the direction of the clamper 2 or spindle unit 3 operation started by the activation of a solenoid valve (not shown), SOL-R represents the solenoid activated retracting direction of the spindle unit 3, SOL-F the solenoid activated advancing direction of the spindle unit 3, SOL-U the solenoid activated rising direction of the clamper 2, and SOL-D the lowering direction of the clamper 2. The symbol MR indicates the rotary operation of the spindle unit 3.
FIG. 6 is a flowchart illustrating the operation sequence of the drilling unit shown in FIG. 5. FIG. 7 illustrates an example of a program written in the SFC language for the programmable controller which controls the drilling unit shown in FIG. 5. The program example in FIG. 7, which is identical in contents to the flowchart in FIG. 6, comprises an initial step S0 that is seen as START command 100 in FIG. 6. Thereafter, the program encounters transition conditions T0 to T4, operation steps S1 to S4, and an end step END. In FIG. 7, the transition conditions T0 to T4 and the blocks S1 to S4, as the operation steps, are shown in correspondence with ladder diagrams. It should be noted that, conventionally, a sequence operation control program is created by first writing the overall structure of the program in the SFC language and then writing the block contents in the ladder language. The use of SFC language and ladder language is well known in the art.
FIG. 8 shows relationships between the input device numbers "X000" to "X004" and output device numbers "Y010" to "Y014" of the programmable controller and the equipment names assigned to those devices.
The operation of the drilling unit shown in FIG. 5 will now be described in accordance with the flowchart shown in FIG. 6. In the flowchart, the control of the drilling unit is initiated in step 100. Whether the workpiece 1 has been set on the base 4 or not is checked by the limit switch LS-W (device X004) in step 101. If the setting (presence) of the workpiece 1 has been confirmed, the clamper 2 is lowered in step 102. In step 103, it is then checked by the limit switch LS-D (device X003) whether or not the clamper 2 has reached a bottom end and completed the clamping of the workpiece 1. If the completion of the clamping has been confirmed, the spindle unit 3 is advanced toward the workpiece 1 in step 104 and the spindle is driven in step 105.
Then, after it has been confirmed in step 106 that the spindle unit 3 has reached a predetermined advance position and a drilling operation with a drill is complete by the limit switch LS-F (device X001) which checks the front end of the spindle unit 3, the spindle unit 3 is retracted in step 107. Then, after it has been confirmed in step 108 that the spindle unit has reached a predetermined retraction position by the limit switch LS-R (device X000) which checks the rear end of the spindle unit 3, the clamper 2 is raised in step 109 and the spindle is stopped in step 110. Finally, in step 111, whether or not the clamper 2 has reached a predetermined top end is checked by the limit switch LS-U (device X002). If this has been confirmed, a drilling control sequence is completed.
In the program written in the SFC language shown in FIG. 7, the steps having identical numbers to those in the flowchart in FIG. 6 indicate identical contents. It should be noted that the operation step S2 indicates the operations of the steps 104 and 105 in FIG. 6, and the operation step S4 those of the steps 109 and 110 in FIG. 6.
The relationships between the input device numbers "X000" to "X004" and output device numbers "Y010" to "Y014" and the equipment names assigned to said devices are as shown in FIG. 8. Referring to FIG. 7, when the device "X004" (LS-W) is closed at the transition condition T0 (101), i.e., limit switch LS-W confirms that the workpiece 1 has been set on the base 4, the transition condition (T0) is established and the operation step S1 (102) is executed. Namely, as seen in the ladder diagram, the device "Y012" is reset (i.e., the solenoid valve SOL-U which causes the clamper 2 to rise is reset) and the device "Y013" is set (i.e., the solenoid valve SOL-D which causes the clamper 2 to lower is set). The remainder of the program in FIG. 7, which is identical in operations to the flowchart in FIG. 6 as described previously, should be apparent and will not be described here.
Since the program control apparatus known in the art is arranged as described above, a program must be written in various programming languages for each operation control module in the sequence control of a controlled object. Also, a program requiring a complete operation sequence to be modified must be decoded entirely. Further, it is difficult to decode such program because operation control and information control generally are combined and interrelated therein.